[EC2] m4インスタンスのネットワーク性能を測定してみた(win2012)
はじめに
AWSチームのすずきです。
2015年6月にリリースされたEC2のm4インスタンス。 AWSにより公開されている情報によると、そのネットワーク性能は最上位のm4.10xlargeで「10Gbps」、以下m4.4xlarge〜m4.xlargeは「高」、m4.largeは「中」とされています。
今回、Windows2012R2サーバの環境で、EC2インスタンス間のネットワーク性能を「iperf」を用いて測定する機会がありましたので、その結果を紹介させて頂きます。
公式資料より抜粋
名前 | vCPU数 | RAM | ネットワーク性能 | EBS最適化 |
---|---|---|---|---|
m4.large | 2 | 8 GiB | 中 | 450 Mbps |
m4.xlarge | 4 | 16 GiB | 高 | 750 Mbps |
m4.2xlarge | 8 | 32 GiB | 高 | 1,000 Mbps |
m4.4xlarge | 16 | 64 GiB | 高 | 2,000 Mbps |
m4.10xlarge | 40 | 160 GiB | 10 Gbps | 4,000 Mbps |
参考
検証環境
概要図
iperf
- 入手先:http://dl.linhost.info/iperf.exe
- 参考:EC2でiperfを使ってネットワークスループットを計測してみた。
サーバ
- インスタンスタイプ:m4.10xlarge
- OS: Windows_Server-2012-R2 (ami-10942110)
- NIC: Intel(R) 82599 VirtualFunction(SR-IOV有効)
- リージョン:ap-northeast-1a
- 配置グループ(placement-groups):指定実施
- iperf起動オプション:「iperf -s」
クライアント
- インスタンスタイプ:m4.10xlarge 〜 m4.large
- OS: Windows_Server-2012-R2 (ami-10942110)
- NIC: Intel(R) 82599 VirtualFunction(SR-IOV有効)
- リージョン:ap-northeast-1a
- 配置グループ(placement-groups):サーバと同一グループを指定
- iperfオプション:「iperf -c (サーバIP) -t 300」 ※測定時間300秒
結果
計測結果
名前 | 5分転送量(GBytes) | 帯域(Mbits/sec) | 時間単価 | 1$あたりの帯域(帯域/時間単価) |
---|---|---|---|---|
m4.large | 15.2 | 436 | $0.183 | 2383 |
m4.xlarge | 25.5 | 730 | $0.366 | 1995 |
m4.2xlarge | 33.7 | 965 | $0.732 | 1318 |
m4.4xlarge | 67.4 | 1930 | $1.464 | 1318 |
m4.10xlarge | 206 | 5890 | $3.66 | 1609 |
- 時間単価はap-northeast-1(東京)リージョン、オンデマンド、Linux/UNIXの1時間費用
まとめ
インスタンスのスペックアップに比例し、EC2間のネットワーク帯域の実測値が上昇する事。 EC2のスペック資料に記載されたネットワーク性能の「高」に、有意な違いが有ることを確認できました。
大量データのバッチ転送などでEC2間のネットワーク性能がボトルネックとなっている場合には、 インスタンスタイプのスペックアップが効果的と考えられます。
ただし、費用帯効果の点では、シャーディングなどによる分散処理(スケールアウト)が優れる可能性がある事。 また、アベイラブルゾーン(AZ)、配置グループ(placement-groups)、NICのSR-IOVなどの最適化が 実施されていない場合、スペックアップでも十分な効果が期待できない場合もあります。 拡張性を必要とするシステム構築の際には、ご留意頂ければと思います。
補足
m4.2xlarge、m4.10xlargeの双方でiperfのサーバを起動し、相互に負荷テスト実施した結果は 以下の通り。EC2インスタンスのNICの帯域は、INとOUTは独立して管理されている事が伺えました。
また今回は計測時間5分、のべ測定時間も1時間に満たない簡易検証でしたが、OSのパフォーマンスモニタが示す値は終始一定。その安定性が印象的でした。